package com.hyt.it.ogt.pj.model.vo;

import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.hyt.common.apiInfor.DataType;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;

@Data
@Accessors(chain = true)
public class ProjectVo {

    @ApiModelProperty(value = "任务id", dataType = DataType.STRING)
    private String id;

    @ApiModelProperty(value = "科目id", dataType = DataType.STRING)
    private String subjectId;

    @ApiModelProperty(value = "任务名称", dataType = DataType.STRING)
    private String projectName;

    @ApiModelProperty(value = "开始时间", dataType = DataType.STRING)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date beginDate;

    @ApiModelProperty(value = "结束时间", dataType = DataType.STRING)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date endDate;

    @ApiModelProperty(value = "评卷状态:0未初始化，1:评卷中，2:已评完")
    private Integer markStatus;

    @ApiModelProperty(value = "应评人数")
    private Integer totalNum;

    @ApiModelProperty(value = "已评人数")
    private Integer completeNum;

    @ApiModelProperty(value = "未评人数")
    private Integer unmarkNum;

    @ApiModelProperty(value = "评卷开始时间", dataType = DataType.STRING)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date pjBeginDate;

    @ApiModelProperty(value = "评卷结束时间", dataType = DataType.STRING)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private Date pjEndDate;

    @ApiModelProperty(value = "考试类型（0：无考场，1：虚拟考场，2：现考现评）")
    private Integer examClassfication;

    @ApiModelProperty(value = "评卷模式（0：按科目评卷，1：按批次评卷，2：按考场评卷）")
    private String markModel;

    @ApiModelProperty(value = "评卷方式（1：流水评卷，2：交叉评卷）")
    private String markType;

    @ApiModelProperty(value = "允许回评（0：允许回评， 1：不允许回评）")
    private String rejudge;

    @ApiModelProperty(value = "匿名评论设置（0：关闭， 1：开启）")
    private String anonymous;

    @ApiModelProperty(value = "批次id")
    private String batchId;

    @ApiModelProperty(value = "批次名称")
    private String batchName;

    @ApiModelProperty(value = "科目名称")
    private String subjectName;

    @ApiModelProperty(value = "考点名称")
    private String placeName;

    @ApiModelProperty(value = "考点名id")
    private String placeId;

    @ApiModelProperty(value = "考场名称")
    private String roomName;

    @ApiModelProperty(value = "考场名Id")
    private String roomId;

    @ApiModelProperty(value = "评卷设置")
    private String settingId;

    @ApiModelProperty(value = "评卷内容")
    private String modeId;

    @ApiModelProperty(value = "主观题总数")
    private Integer subjectiveNum;

    @ApiModelProperty(value = "评卷模式id")
    private String modeExpertId;

    @ApiModelProperty(value = "评卷时间id")
    private String taskTimeId;

    @ApiModelProperty(value = "评卷设置字符串")
    private String settingStr;

    @ApiModelProperty(value = "评卷内容")
    private String modeStr;

    @ApiModelProperty(value = "考试分类")
    private String examTypeName;

    @ApiModelProperty(value = "试卷id")
    private String paperId;

    @ApiModelProperty(value = "试卷id(未开始 1 评卷中 2 已结束)")
    private String gradingStatus;

    @ApiModelProperty(value = "考试名称")
    private String taskName;


    @ApiModelProperty(value = "评卷快id")
    private String pieceId;


    @ApiModelProperty(value = "显示客观题成绩按钮:0 不显示，1 显示")
    private Integer showObjScoreButton;

    @ApiModelProperty(value = "导出客观题成绩次数")
    private Integer downLoadObScoreTime;

    @ApiModelProperty(value = "导出全量数据zip包次数")
    private Integer downLoadZipTime;

    @ApiModelProperty(value = "是否存在在途的导出zip文件记录")
    private Boolean runningDownLoadZipTask = Boolean.FALSE;

    @ApiModelProperty(value = "是否存在在途的导出客观题文件记录")
    private Boolean runningDownLoadObScoreTask = Boolean.FALSE;

    @ApiModelProperty(value = "是否有客观题")
    private Boolean hasObjectiveItems = Boolean.TRUE;


}
